// function show(a,b){
//     console.log(arguments);
    
// }
// show();
// show(1,2,3,4);

// function say(){
//     console.log("传入了："+arguments.length+"个参数");
//     console.log("第一个参数："+arguments[0]);
//     console.log("第2个参数："+arguments[1]);

    
    
// }

// say();
// say(1,2,3);

// // 检查参数是否符合要求
// function func(x,y,z){
//     //验证实参个数是否等于形参个数
//     if(arguments.length != func.length){
//         throw new Error("需要"+func.length+"个参数");
//     }
//     //再判断类型
//     if(typeof arguments[0] != "number"){
//         throw new Error("第一个实参必须是数字");
//     }
//     return x+y+z;
// }

// func(1,2,3);

// function check(args){
//     //实参个数
//     var act = args.length;
//     //形参个数
//     var exp = args.callee.length;
//     if(act != exp){
//         throw new Error("参数个数不对");
//     }

// }

// function f(x,y,z){
//     try{
//         check(arguments);
//         return x+y+z;
//     }catch(e){
//         console.log(e);
        
//     }

// }

// console.log(f(1,2,3));
// console.log(f(1,2));

console.log("--------------------------");

function doAdd(){
    // if(arguments.length==0){
    //     return 0;
    // }else{
    //     var sum=0;
    //     for(var i=0;i<arguments.length;i++){
    //         sum+=arguments[i];
    //     }
    //     return sum;
    // }
    //优化代码
    var sum = 0;
    for(var i=0;i<arguments.length;i++){
        sum+=(+arguments[i]?arguments[i]:0);
    }
    return sum;
}

console.log(doAdd());
console.log(doAdd(1));
console.log(doAdd(3,5));
